Performance monitoring support for cfm over evpn

ABSTRACT

A network device may generate a route advertisement that includes a media access control (MAC) address. The MAC address may correspond to a data link established between the network device and a customer edge (CE) device. The network device and the CE device may be associated with an Ethernet virtual private network (EVPN) that includes other network devices that are remote from the CE device. The network device may cause the route advertisement to be outputted over the EVPN. The route advertisement may permit the other network devices to learn that the data link is directly reachable via the MAC address, and may permit the other network devices, when configured as maintenance endpoints (MEPs), to directly address performance monitoring-related unicast packets, intended for the data link, using the MAC address, such that flooding of the performance monitoring-related unicast packets is avoided.

BACKGROUND

In an Ethernet virtual private network (EVPN), customer edge (CE)devices (e.g., hosts, routers, switches, firewalls, and/or the like) maybe connected to provider edge (PE) devices (e.g., hosts, routers,switches, firewalls, and/or the like) to form the edge of aMultiprotocol Label Switching (MPLS) infrastructure. The PE devices mayprovide Layer 2 virtual bridge connectivity between the CE devices.Learning, between the PE devices (e.g., learning of media access control(MAC) addresses and/or the like), occurs in the control plane, which isin contrast to Virtual Private Local Area Network Service (VPLS) orbridging, where a PE device automatically learns MAC addresses,associated with other endpoints, in the data plane.

SUMMARY

According to some possible implementations, a method may includeproviding, by a first provider edge (PE) device, a route advertisement.The first PE device may be part of an Ethernet virtual private network(EVPN), and may be multihomed to by a first customer edge (CE) device. Afirst attachment circuit may be established between the first PE deviceand the first CE device. The route advertisement may include a mediaaccess control (MAC) address, corresponding to the first attachmentcircuit, that is utilized as a connectivity fault management (CFM) MACaddress for a maintenance endpoint (MEP) configured on the firstattachment circuit. The method may include receiving, by a second PEdevice, the route advertisement. The second PE device may be part of theEVPN, and may be communicatively coupled to a second CE device. A secondattachment circuit may be established between the second PE device andthe second CE device. The second PE device may be configured to monitorconnectivity between the second attachment circuit and the firstattachment circuit. The method may include causing, by the second PEdevice, traffic, relating to monitoring the connectivity, to be directedto the first PE device and/or to the first attachment circuit based onthe route advertisement. The traffic may not be provided to any other PEdevice, on the EVPN, that is multihomed to by the first CE device.

According to some possible implementations, a network device may includeone or more memories, and one or more processors to generate a routeadvertisement that includes a media access control (MAC) address. TheMAC address may correspond to a data link established between thenetwork device and a customer edge (CE) device. The network device andthe CE device may be associated with an Ethernet virtual private network(EVPN). The EVPN may include other network devices that are remote fromthe CE device. The one or more processors may cause the routeadvertisement to be outputted over the EVPN. The route advertisement maypermit the other network devices to learn that the data link is directlyreachable via the MAC address, and may enable the other network devices,when configured as maintenance endpoints (MEPs), to directly addressperformance monitoring-related unicast packets, intended for the datalink, using the MAC address, such that flooding of the performancemonitoring-related unicast packets is avoided.

According to some possible implementations, a non-transitorycomputer-readable medium may store instructions that include one or moreinstructions that, when executed by one or more processors of a networkdevice, cause the one or more processors to generate a routeadvertisement that includes reachability information associated with anattachment circuit established between the network device and a customeredge (CE) device. The network device and the CE device may be associatedwith an Ethernet virtual private network (EVPN). The EVPN may includeother network devices that are remote from the CE device. The one ormore instructions may cause the one or more processors to cause theroute advertisement to be outputted over the EVPN. The routeadvertisement may permit the other network devices to learn that theattachment circuit is directly reachable based on the reachabilityinformation, and may enable the other network devices, when configuredto conduct performance monitoring in accordance with connectivity faultmanagement (CFM), to directly address performance monitoring-relatedunicast packets, intended for the attachment circuit, using thereachability information, such that flooding of the performancemonitoring-related unicast packets is avoided.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a diagram of an example implementation described herein.

FIG. 2 is a diagram of an example environment in which systems and/ormethods, described herein, may be implemented.

FIG. 3 is a diagram of example components of one or more devices of FIG.2.

FIG. 4 is a flow chart of an example process for facilitatingperformance monitoring over an EVPN.

FIG. 5 is a flow chart of an example process for facilitatingperformance monitoring over an EVPN.

FIG. 6 is a flow chart of an example process for facilitatingperformance monitoring over an EVPN.

DETAILED DESCRIPTION

The following detailed description of example implementations refers tothe accompanying drawings. The same reference numbers in differentdrawings may identify the same or similar elements.

EVPN provides a multihoming feature that enables connection of acustomer site to two or more PE devices to provide redundantconnectivity. A CE device may thus be multihomed to different PE devicesor to the same PE device. In a case where a CE device is multihomed tomultiple PE devices in an EVPN, a multihoming mode of operation maydetermine which PE device (or devices) will forward traffic to the CEdevice. In a single mode, a default mode of operation, a PE device isconnected to a single-homed customer site (e.g., a CE device that isconnected only to the PE device). In this mode, an Ethernet segmentvalue (e.g., an Ethernet segment identifier (ESI)) is not configured(e.g., is set to ‘0’). In an active-standby redundancy mode, only asingle PE device, among a group of PE devices attached to an Ethernetsegment, may be permitted to forward traffic to, and from, that Ethernetsegment. In an active-active redundancy mode (also known as anall-active redundancy mode), all PE devices attached to an Ethernetsegment may be permitted to forward traffic to, and from, the Ethernetsegment.

In EVPN multihoming, traffic flow may be based on unicast traffic (e.g.,point-to-point communications involving a single sender and a singlereceiver). In the all-active redundancy mode, unicast traffic, receivedfrom a remote PE device (e.g., from the core), and directed to a CEdevice, may be load-balanced to all multihomed PE devices. Similarly,unicast traffic, received from the CE device, and directed to a remotePE device (e.g., to the core), may be load-balanced to all themultihomed PE devices. Additionally, flood routes may be created forflooding packets, for example, when a unicast packet is received fromthe core.

As used herein, a packet may refer to a communication structure forcommunicating information, such as a protocol data unit (PDU), a networkpacket, a frame, a subframe, a datagram, a segment, a message, a block,a cell, a slot, a symbol, a portion of any of the above, and/or anothertype of formatted or unformatted unit of data capable of beingtransmitted via a network.

Recommendation ITU-T G.8013/Y.1731, which is in cooperation with theInstitute of Electrical Engineers (IEEE) 802.1ag standard, also known asEthernet Connectivity Fault Management (CFM), defines protocols andpractices for Operations, Administration, and Management (OAM) for pathsthrough local area networks (LANs), metropolitan area networks (MANs),and wide area networks (WANs). Recommendation ITU-T G.8013/Y.1731defines protocols and procedures for monitoring, detecting, verifying,and isolating connectivity failures in various networks. Networkdevices, such as PE devices, may be associated with a particularmaintenance domain. For example, a maintenance domain may refer to anetwork, or a portion of a network, where faults in connectivity may bemanaged. Additionally, the network devices may be associated with aparticular maintenance association. For example, a maintenanceassociation may refer to a set of PE devices, referred to as maintenanceendpoints (MEPs), that are each configured with the same maintenanceassociation identifier, and are established to monitor and verify theintegrity of a service instance throughout a maintenance domain. An UpMEP session may be configured (e.g., for a single instance of amaintenance domain identifier and a maintenance association name) tomonitor services in an EVPN associated with PE devices.

In some cases, MEPs may exchange continuity check messages (CCMs) thatinclude information identifying respective statuses of interfacesassociated with respective MEPs. For example, assume that a first PEdevice (a first MEP) and a second PE device (a second MEP) areassociated with an EVPN, that the first PE device establishesconnectivity with a first CE device over a first attachment circuit, andthat the second PE device establishes connectivity with a second CEdevice over a second attachment circuit. In this case, network trafficmay be exchanged between the first CE device and the second CE devicevia the EVPN and via the first PE device and the second PE device.

An EVPN network supports certain CFM features, including monitoringconnectivity between two PE devices in an all-active or active-standbymultihomed configuration, performance monitoring (e.g., delaymeasurement (ETH-DM) and synthetic loss measurement (ETH-SLM)), andmonitoring connectivity between PE devices and CE devices. In an EVPN,however, a PE device does not automatically learn how to directly reachanother PE device's attachment circuit for purposes of CFM—that is, thePE device does not automatically learn a CFM MAC address associated withthe other PE device's attachment circuit (e.g., the MAC address of theother PE device's attachment circuit). Thus, if a particular PE device,configured as an MEP, needs to conduct performance monitoring betweenthe particular PE device's attachment circuit and an attachment circuitof another PE device on the EVPN, performance monitoring-related unicastpackets transmitted by the particular PE device may be treated asunknown unicast packets, and thus flooded to all the PE devices on theEVPN. Such flooding may occur even in a case where the EVPN is amultipoint-to-multipoint network. This results in increased networktraffic, which negatively impacts network performance, and may even leadto loss of network service. Additionally, in a multihomed case (e.g., inan all-active redundancy mode), a first multihomed PE device mayadvertise only reachability information, for the first multihomed PEdevice's attachment circuit, by specifying an ESI in a Type 2 routeadvertisement, and a second multihomed PE device, on the same Ethernetsegment as the first multihomed PE device, may advertise onlyreachability information, for the second multihomed PE device'sattachment circuit, by specifying the same ESI. This may occur, forexample, if CFM MAC addresses are advertised via ESI (whereas, if CFMMAC addresses are not learned, performance monitoring-related unicastpackets may be treated only as unknown unicast packets). In such a case,a remote PE device, configured as an MEP to conduct performancemonitoring between the remote PE device's attachment circuit and thefirst multihomed PE device's attachment circuit, for example, maytransmit performance monitoring-related unicast packets by referencingonly the ESI. This results in unicast traffic, received from the remotePE device, being load-balanced to the first multihomed PE device and thesecond multihomed PE device, despite the unicast traffic being intendedonly for the first multihomed PE device's attachment circuit. Thisprevents an MEP (e.g., a remote PE device) from being able to uniquelymonitor connectivity between individual attachment circuits.

Some implementations, described herein, enable a multihomed PE device inan EVPN to advertise a MAC address of the multihomed PE device'sattachment circuit (e.g., used as the CFM MAC address for an MEPconfigured on the attachment circuit), to other PE devices on the EVPN(e.g., over the control plane). In some implementations, the MAC addressmay be advertised via a Type 2 route, where a value of the ESI is set to‘0’. In some implementations, the MAC address may not be added locallyat the multihomed PE device, but may only be advertised, by themultihomed PE device, to remote PE devices to indicate that themultihomed PE device's attachment circuit may be reached using the MACaddress.

In this way, a remote PE device, configured as an MEP (e.g., in an UpMEP session), may directly transmit performance monitoring-relatedunicast packets to the multihomed PE device using the advertised MACaddress. This eliminates the possibility of such unicast packets beingtreated as unknown unicast packets and flooded (e.g., as a trafficstorm) to all PE devices on an EVPN, which reduces unneeded networktraffic, thereby improving overall network performance. This alsopermits a remote PE device, configured as an MEP, to uniquely monitorconnectivity between individual attachment circuits in a multihomednetwork operating in the all-active redundancy mode, which enablesappropriate identification of connectivity issues over an EVPN, thusimproving CFM, including various related procedures, such as Loopbackand Linktrace. For example, implementations, described herein, assistwith Linktrace in an EVPN topology.

FIG. 1 is a diagram of an example implementation 100 described herein.As shown in FIG. 1, example implementation 100 may include an EVPNassociated with multiple CE devices, including CE1, CE2, CE3, and CE4,and multiple PE devices, including PE1, PE2, and PE3 configured tofunction as MEPs (e.g., MEP 1, MEP 2, and MEP 3). As shown, anattachment circuit 1, may be established between PE1 and CE1, anattachment circuit 2, may be established between PE1 and CE2, and anattachment circuit 3, may be established between PE2 and CE2. As furthershown, an attachment circuit 4, may be established between PE3 and CE3,and an attachment circuit 5, may be established between PE3 and CE4.Here, CE2 may be multihomed to PE1 and PE2 in an all-active redundancymode.

As shown by reference number 110, PE2 may provide a media accesscontrol/Internet Protocol (MAC/IP) route advertisement for attachmentcircuit 3. For example, PE2 may provide a Type 2 route advertisement, ina control plane (e.g., over a local interface), that includes a MACaddress associated with attachment circuit 3 (e.g., a MAC addressassociated with a port of PE2 that forms attachment circuit 3 with CE2,and used as the CFM MAC address for the MEP configured on attachmentcircuit 3). This enables other PE devices on the EVPN, such as PE1 andPE3, to learn, on the control plane, the MAC address that may be used todirectly reach attachment circuit 3 (e.g., for performance monitoringpurposes). In some implementations, a value of the ESI in the MAC/IProute advertisement may be set to ‘0’. This will avoid other PE deviceson the EVPN (e.g., PE1 and PE3) from learning reachability informationfor attachment circuit 3 via ESI properties, and addressing performancemonitoring-related packets using an ESI.

Although not shown, PE1 may similarly provide a MAC/IP routeadvertisement for attachment circuit 1 and a MAC/IP route advertisementfor attachment circuit 2 (e.g., a Type 2 route advertisement thatincludes a MAC address associated with attachment circuit 1 (e.g., usedas the CFM MAC address for the MEP configured on attachment circuit 1)and a Type 2 route advertisement that includes a MAC address associatedwith attachment circuit 2 (e.g., used as the CFM MAC address for the MEPconfigured on attachment circuit 2), and PE3 may similarly provide aMAC/IP route advertisement for attachment circuit 4 and a MAC/IP routeadvertisement for attachment circuit 5 (e.g., a Type 2 routeadvertisement that includes a MAC address associated with attachmentcircuit 4 (e.g., used as the CFM MAC address for the MEP configured onattachment circuit 4) and a Type 2 route advertisement that includes aMAC address associated with attachment circuit 5 (e.g., used as the CFMMAC address for the MEP configured on attachment circuit 5)). In thisway, all PE devices on the EVPN may learn the MAC addresses of all theattachment circuits (e.g., used as the CFM MAC addresses for the MEPsconfigured on such attachment circuits), and utilize individual ones ofthe MAC addresses to send directed performance monitoring-relatedtraffic to individual ones of the attachment circuits.

As shown by reference number 120, PE3 may receive the MAC/IP routeadvertisement for attachment circuit 3. For example, PE3 may receive theMAC/IP route advertisement via the control plane. In this way, PE3 maylearn the MAC address of attachment circuit 3 (e.g., used as the CFM MACaddress for the MEP configured on attachment circuit 3), and may store,in a data structure (e.g., a routing table, a forwarding table, asession table, a flow table, and/or the like) in PE3, informationassociating the MAC address with data regarding attachment circuit 3. Insome implementations, and in a case where PE1 also provides MAC/IP routeadvertisements (e.g., for attachment circuit 1 and/or attachment circuit2) similar to that provided by PE2, PE3 may also receive such MAC/IProute advertisements and/or store similar information in the datastructure.

As shown by reference number 130, PE3 may (e.g., functioning as an MEP(e.g., MEP 3) based on an MEP session being established to facilitateCFM) perform an action relating to monitoring connectivity between oneor more attachment circuits associated with PE3 (e.g., attachmentcircuit 4 and/or attachment circuit 5) and one or more other attachmentcircuits associated with other PE devices (e.g., attachment circuit 1,attachment circuit 2, and/or attachment circuit 3). For example, in acase where connectivity between attachment circuit 4 and attachmentcircuit 3 is to be monitored, PE3 may generate and transmit performancemonitoring-related unicast packets (e.g., associated with ETH-DM,ETH-SLM, Ethernet Loopback, Ethernet Linktrace, and/or the like) thatare addressed directly to the MAC address of attachment circuit 3 (e.g.,used as the CFM MAC address for the MEP configured on attachment circuit3).

In this way, rather than advertising the presence of an attachmentcircuit by simply specifying an ESI that is associated with theattachment circuit (e.g., as in a prior case, where unicast packetswould be transmitted to all multihomed PE devices rather than only to aPE device associated with a particular attachment circuit), a PE device,on an EVPN, may advertise a MAC address associated with an attachmentcircuit (e.g., as if the attachment circuit corresponds to asingle-homed interface that is reachable only via that PE device). Thisenables all peer PE devices, on the EVPN, to learn reachabilityinformation associated with individual attachment circuits, and utilizethe reachability information to uniquely monitor connectivity across theEVPN. This also eliminates the possibility of performancemonitoring-related unicast packets being treated as unknown unicastpackets and flooded (e.g., as a traffic storm) to all PE devices on anEVPN, which reduces unneeded network traffic, thereby improving overallnetwork performance. Furthermore, enabling PE devices to learn MACaddresses of attachment circuits (e.g., used as CFM MAC addresses forMEPs configured on such attachment circuits) in this manner alsofacilitates Linktrace procedures, since Linktrace procedures leveragesuch MAC addresses.

As indicated above, FIG. 1 is provided merely as an example. Otherexamples are possible and may differ from what was described with regardto FIG. 1.

FIG. 2 is a diagram of an example environment 200 in which systemsand/or methods, described herein, may be implemented. As shown in FIG.2, environment 200 may include CE devices 205-1 through 205-4 (hereincollectively referred to as CEs 205, and individually as CE 205), PEdevices 210-1 and 210-2 (herein collectively referred to as PEs 210, andindividually as PE 210), and a network 215. Devices of environment 200may interconnect via wired connections, wireless connections, or acombination of wired and wireless connections.

CE 205 includes a device, positioned at an edge of a customer network,that is capable of processing and/or transferring traffic associatedwith PEs 210. For example, CE 205 may include a router, a gateway, aswitch, a server, a modem, a network interface card (NIC), a hub, abridge, an optical add-drop multiplexer (OADM), and/or the like. In someimplementations, a CE 205 may be multihomed to multiple PEs 210 (e.g.,in an all-active redundancy mode), and form attachment circuits withsuch PEs 210, as described elsewhere herein.

PE 210 includes a device, positioned at an edge of a service providernetwork, that is capable of processing and/or transferring trafficassociated with CEs 205. For example, PE 210 may include a router, agateway, a switch, a server, a modem, a NIC, a hub, a bridge, an OADM,and/or the like. In some implementations, PE 210 may be an ingress PEand/or an egress PE associated with network 215. In someimplementations, PE 210 may be a physical device implemented within ahousing, such as a chassis. In some implementations, PE 210 may be avirtual device implemented by one or more computer devices of a cloudcomputing environment or a data center. In some implementations, PEs 210may be configured as MEPs for purposes of CFM, and may be configured toadvertise MAC addresses of associated attachment circuits (e.g., used asCFM MAC addresses for MEPs configured on such attachment circuits), in acontrol plane, such that peer PEs 210 may direct performancemonitoring-related traffic to individual attachment circuits based onthe MAC addresses of those attachment circuits, as described elsewhereherein.

Network 215 includes one or more wired and/or wireless label switchingnetworks that support EVPN. For example, network 215 may include an MPLSnetwork, a generalized MPLS (GMPLS) network, and/or the like. In someimplementations, network 215 may include a local area network (“LAN”), awide area network (“WAN”), a metropolitan area network (“MAN”), atelephone network (e.g., the Public Switched Telephone Network(“PSTN”)), an ad hoc network, an intranet, the Internet, a fiberoptic-based network, a private network, a cloud computing network,and/or a combination of these or other types of networks.

The number and arrangement of devices and networks shown in FIG. 2 areprovided as an example. In practice, there may be additional devicesand/or networks, fewer devices and/or networks, different devices and/ornetworks, or differently arranged devices and/or networks than thoseshown in FIG. 2. Furthermore, two or more devices shown in FIG. 2 may beimplemented within a single device, or a single device shown in FIG. 2may be implemented as multiple, distributed devices. Additionally, oralternatively, a set of devices (e.g., one or more devices) ofenvironment 200 may perform one or more functions described as beingperformed by another set of devices of environment 200.

Notably, while example environment 200 includes a particular quantity ofCEs 205, PEs 210, and networks 215, the devices and networks of exampleenvironment 200 are provided for explanatory purposes. In other words,the quantity of CEs 205, PEs 210, and/or networks 215 may differ fromthat shown in example environment 200.

FIG. 3 is a diagram of example components of a device 300. Device 300may correspond to PE 210 or CE 205. In some implementations, PE 210 orCE 205 may include one or more devices 300 and/or one or more componentsof device 300. As shown in FIG. 3, device 300 may include one or moreinput components 305-1 through 305-B (B≥1) (hereinafter referred tocollectively as “input components 305,” and individually as “inputcomponent 305”), a switching component 310, one or more outputcomponents 315-1 through 315-C(C≥1) (hereinafter referred tocollectively as “output components 315,” and individually as “outputcomponent 315”), and a controller 320.

Input component 305 may be points of attachment for physical links andmay be points of entry for incoming traffic, such as packets. Inputcomponent 305 may process incoming traffic, such as by performing datalink layer encapsulation or decapsulation. In some implementations,input component 305 may send and/or receive packets. In someimplementations, input component 305 may include an input line card thatincludes one or more packet processing components (e.g., in the form ofintegrated circuits), such as one or more interface cards (IFCs), packetforwarding components, line card controller components, input ports,processors, memories, and/or input queues. In some implementations,device 300 may include one or more input components 305.

Switching component 310 may interconnect input components 305 withoutput components 315. In some implementations, switching component 310may be implemented via one or more crossbars, via busses, and/or withshared memories. The shared memories may act as temporary buffers tostore packets from input components 305 before the packets areeventually scheduled for delivery to output components 315. In someimplementations, switching component 310 may enable input components305, output components 315, and/or controller 320 to communicate.

Output component 315 may store packets and may schedule packets fortransmission on output physical links. Output component 315 may supportdata link layer encapsulation or decapsulation, and/or a variety ofhigher-level protocols. In some implementations, output component 315may send packets and/or receive packets. In some implementations, outputcomponent 315 may include an output line card that includes one or morepacket processing components (e.g., in the form of integrated circuits),such as one or more IFCs, packet forwarding components, line cardcontroller components, output ports, processors, memories, and/or outputqueues. In some implementations, device 300 may include one or moreoutput components 315. In some implementations, input component 305 andoutput component 315 may be implemented by the same set of components(e.g., an input/output component may be a combination of input component305 and output component 315).

Controller 320 includes a processor in the form of, for example, acentral processing unit (CPU), a graphics processing unit (GPU), anaccelerated processing unit (APU), a microprocessor, a microcontroller,a digital signal processor (DSP), a field-programmable gate array(FPGA), an application-specific integrated circuit (ASIC), and/oranother type of processor that can interpret and/or executeinstructions. A processor is implemented in hardware, firmware, or acombination of hardware and software. In some implementations,controller 320 may include one or more processors that can be programmedto perform a function.

In some implementations, controller 320 may include a random accessmemory (RAM), a read only memory (ROM), and/or another type of dynamicor static storage device (e.g., a flash memory, a magnetic memory, or anoptical memory) that stores information and/or instructions for use bycontroller 320.

In some implementations, controller 320 may communicate with otherdevices, networks, and/or systems connected to device 300 to exchangeinformation regarding network topology. Controller 320 may createrouting tables based on the network topology information, createforwarding tables based on the routing tables, and forward theforwarding tables to input components 305 and/or output components 315.Input components 305 and/or output components 315 may use the forwardingtables to perform route lookups for incoming and/or outgoing packets.

Controller 320 may perform one or more processes described herein.Controller 320 may perform these processes in response to executingsoftware instructions stored by a non-transitory computer-readablemedium. A computer-readable medium is defined herein as a non-transitorymemory device. A memory device includes memory space within a singlephysical storage device or memory space spread across multiple physicalstorage devices.

Software instructions may be read into a memory and/or storage componentassociated with controller 320 from another computer-readable medium orfrom another device via a communication interface. When executed,software instructions stored in a memory and/or storage componentassociated with controller 320 may cause controller 320 to perform oneor more processes described herein. Additionally, or alternatively,hardwired circuitry may be used in place of or in combination withsoftware instructions to perform one or more processes described herein.Thus, implementations described herein are not limited to any specificcombination of hardware circuitry and software.

The number and arrangement of components shown in FIG. 3 are provided asan example. In practice, device 300 may include additional components,fewer components, different components, or differently arrangedcomponents than those shown in FIG. 3. Additionally, or alternatively, aset of components (e.g., one or more components) of device 300 mayperform one or more functions described as being performed by anotherset of components of device 300.

FIG. 4 is a flow chart of an example process 400 for facilitatingperformance monitoring over an EVPN. In some implementations, one ormore process blocks of FIG. 4 may be performed by a first PE device(e.g., a first PE 210) and/or a second PE device (e.g., a second PE210). In some implementations, one or more process blocks of FIG. 4 maybe performed by another device or a group of devices separate from orincluding the first PE device and/or the second PE device, such asanother PE device (e.g., another PE 210) or a CE device (e.g., CE 205).

As shown in FIG. 4, process 400 may include providing, by the first PEdevice, a route advertisement, the first PE device being part of anEthernet virtual private network (EVPN), and being multihomed to by afirst customer edge (CE) device, a first attachment circuit beingestablished between the first PE device and the first CE device, theroute advertisement including a media access control (MAC) address,corresponding to the first attachment circuit, that is utilized as aconnectivity fault management (CFM) MAC address for a maintenanceendpoint (MEP) configured on the first attachment circuit (block 410).For example, the first PE device (e.g., using switching component 310,output component 315, controller 320, and/or the like) may provide aroute advertisement, as described above in connection with FIG. 1. Insome implementations, the first PE device may be part of an EVPN, andmay be multihomed to by a first CE device. In some implementations, afirst attachment circuit may be established between the first PE deviceand the first CE device. In some implementations, the routeadvertisement may include a MAC address, corresponding to the firstattachment circuit, that is utilized as a CFM MAC address for an MEPconfigured on the first attachment circuit.

As further shown in FIG. 4, process 400 may include receiving, by thesecond PE device, the route advertisement, the second PE device beingpart of the EVPN, and being communicatively coupled to a second CEdevice, a second attachment circuit being established between the secondPE device and the second CE device, the second PE device beingconfigured to monitor connectivity between the second attachment circuitand the first attachment circuit (block 420). For example, the second PEdevice (e.g., using input component 305, switching component 310,controller 320, and/or the like) may receive the route advertisement, asdescribed above in connection with FIG. 1. In some implementations, thesecond PE device may be part of the EVPN, and may be communicativelycoupled to a second CE device. In some implementations, a secondattachment circuit may be established between the second PE device andthe second CE device. In some implementations, the second PE device maybe configured to monitor connectivity between the second attachmentcircuit and the first attachment circuit.

As further shown in FIG. 4, process 400 may include causing traffic,relating to monitoring the connectivity, to be directed to the first PEdevice and/or to the first attachment circuit based on the routeadvertisement, the traffic not being provided to any other PE device, onthe EVPN, that is multihomed to by the first CE device (block 430). Forexample, the second PE device (e.g., using switching component 310,output component 315, controller 320, and/or the like) may causetraffic, relating to monitoring the connectivity, to be directed to thefirst PE device and/or to the first attachment circuit based on theroute advertisement, as described above in connection with FIG. 1. Insome implementations, the traffic may not be provided to any other PEdevice, on the EVPN, that is multihomed to by the first CE device.

Process 400 may include additional implementations, such as any singleimplementation or any combination of implementations described belowand/or in connection with one or more other processes describedelsewhere herein.

In some implementations, the second PE device may be configured tomonitor the connectivity based on performance monitoring when CFM MEP isconfigured. In some implementations, the second PE device may beconfigured as a maintenance endpoint (MEP). In some implementations, thetraffic may include a unicast packet having the MAC address as adestination address. In some implementations, the route advertisementmay include a Type 2 route advertisement. In some implementations, theroute advertisement may not advertise reachability of the firstattachment circuit based on an Ethernet segment identifier (ESI). Insome implementations, an Ethernet segment identifier (ESI) value in theroute advertisement may be set to ‘0’.

In some implementations, the first CE device may be multihomed to thefirst PE device, and to at least one other PE device on the EVPN, basedon an All-Active redundancy mode of operation. In some implementations,the second PE device may be a remote PE device that is not associatedwith an Ethernet segment relating to the first CE device. In someimplementations, the traffic may not be flooded to multiple PE deviceson the EVPN. In some implementations, the EVPN may be configured as amultipoint-to-multipoint network. In some implementations, providing theroute advertisement, and receiving the route advertisement, may beperformed via a control plane.

In some implementations, the first PE device may be configured tomonitor the connectivity between the first attachment circuit and thesecond attachment circuit. In some implementations, the second PE devicemay be multihomed to by the second CE device. In some implementations,the second PE device may provide another route advertisement. In someimplementations, the other route advertisement may include a MACaddress, corresponding to the second attachment circuit, that isutilized as a CFM MAC address for an MEP configured on the secondattachment circuit. In some implementations, the first PE device mayreceive the other route advertisement. In some implementations, thefirst PE device may cause additional traffic, relating to monitoring theconnectivity, to be directed to the second PE device and/or to thesecond attachment circuit based on the other route advertisement. Insome implementations, the additional traffic may not be provided to anyother PE device, on the EVPN, that is multihomed to by the second CEdevice.

Although FIG. 4 shows example blocks of process 400, in someimplementations, process 400 may include additional blocks, fewerblocks, different blocks, or differently arranged blocks than thosedepicted in FIG. 4. Additionally, or alternatively, two or more of theblocks of process 400 may be performed in parallel.

FIG. 5 is a flow chart of an example process 500 for facilitatingperformance monitoring over an EVPN. In some implementations, one ormore process blocks of FIG. 5 may be performed by a network device, suchas a PE device (e.g., PE 210). In some implementations, one or moreprocess blocks of FIG. 5 may be performed by another device or a groupof devices separate from or including the network device, such asanother PE device (e.g., another PE 210) or a CE device (e.g., CE 205).In some implementations, the network device may include one or morememories, and one or more processors to perform process 500.

As shown in FIG. 5, process 500 may include generating a routeadvertisement that includes a media access control (MAC) address, theMAC address corresponding to a data link established between the networkdevice and a customer edge (CE) device, the network device and the CEdevice being associated with an Ethernet virtual private network (EVPN),the EVPN including other network devices that are remote from the CEdevice (block 510). For example, the network device (e.g., using inputcomponent 305, switching component 310, output component 315, controller320, and/or the like) may generate a route advertisement that includes aMAC address, as described above in connection with FIG. 1. In someimplementations, the MAC address may correspond to a data linkestablished between the network device and a customer edge (CE) device.In some implementations, the network device and the CE device may beassociated with an Ethernet virtual private network (EVPN). In someimplementations, the EVPN may include other network devices that areremote from the CE device.

As further shown in FIG. 5, process 500 may include causing the routeadvertisement to be outputted over the EVPN, the route advertisementpermitting the other network devices to learn that the data link isdirectly reachable via the MAC address, and enabling the other networkdevices, when configured as maintenance endpoints (MEPs), to directlyaddress performance monitoring-related unicast packets, intended for thedata link, using the MAC address, such that flooding of the performancemonitoring-related unicast packets is avoided (block 520). For example,the network device (e.g., using switching component 310, outputcomponent 315, controller 320, and/or the like) may cause the routeadvertisement to be outputted over the EVPN, as described above inconnection with FIG. 1. In some implementations, the route advertisementmay permit the other network devices to learn that the data link isdirectly reachable via the MAC address, and may enable the other networkdevices, when configured as MEPs, to directly address performancemonitoring-related unicast packets, intended for the data link, usingthe MAC address, such that flooding of the performancemonitoring-related unicast packets is avoided.

Process 500 may include additional implementations, such as any singleimplementation or any combination of implementations described belowand/or in connection with one or more other processes describedelsewhere herein.

In some implementations, the performance monitoring-related unicastpackets may be associated with delay measurements (ETH-DM) and/orsynthetic loss measurements (ETH-SLM). In some implementations, theperformance monitoring-related unicast packets may be associated withEthernet Loopback (ETH-LB) messages and/or Ethernet Linktrace Reply(ETH-LTR). In some implementations, the MAC address may be associatedwith a physical port, of the network device, to which the CE device iscommunicatively coupled.

Although FIG. 5 shows example blocks of process 500, in someimplementations, process 500 may include additional blocks, fewerblocks, different blocks, or differently arranged blocks than thosedepicted in FIG. 5. Additionally, or alternatively, two or more of theblocks of process 500 may be performed in parallel.

FIG. 6 is a flow chart of an example process 600 for facilitatingperformance monitoring over an EVPN. In some implementations, one ormore process blocks of FIG. 6 may be performed by a network device(e.g., a PE 210). In some implementations, one or more process blocks ofFIG. 6 may be performed by another device or a group of devices separatefrom or including the network device, such as another PE device (e.g.,another PE 210) or a CE device (e.g., CE 205). In some implementations,a non-transitory computer-readable medium may store instructions. Insome implementations, the instructions may include one or moreinstructions that, when executed by one or more processors of thenetwork device, cause the one or more processors to perform process 600.

As shown in FIG. 6, process 600 may include generating a routeadvertisement that includes reachability information associated with anattachment circuit established between the network device and a customeredge (CE) device, the network device and the CE device being associatedwith an Ethernet virtual private network (EVPN), the EVPN includingother network devices that are remote from the CE device (block 610).For example, the network device (e.g., using input component 305,switching component 310, output component 315, controller 320, and/orthe like) may generate a route advertisement that includes reachabilityinformation associated with an attachment circuit established betweenthe network device and a CE device, as described above in connectionwith FIG. 1. In some implementations, the network device and the CEdevice may be associated with an EVPN. In some implementations, the EVPNmay include other network devices that are remote from the CE device.

As further shown in FIG. 6, process 600 may include causing the routeadvertisement to be outputted over the EVPN, the route advertisementpermitting the other network devices to learn that the attachmentcircuit is directly reachable based on the reachability information, andenabling the other network devices, when configured to conductperformance monitoring in accordance with connectivity fault management(CFM), to directly address performance monitoring-related unicastpackets, intended for the attachment circuit, using the reachabilityinformation, such that flooding of the performance monitoring-relatedunicast packets is avoided (block 620). For example, the network device(e.g., using input component 305, switching component 310, outputcomponent 315, controller 320, and/or the like) may cause the routeadvertisement to be outputted over the EVPN, as described above inconnection with FIG. 1. In some implementations, the route advertisementmay permit the other network devices to learn that the attachmentcircuit is directly reachable based on the reachability information, andmay enable the other network devices, when configured to conductperformance monitoring in accordance with CFM, to directly addressperformance monitoring-related unicast packets, intended for theattachment circuit, using the reachability information, such thatflooding of the performance monitoring-related unicast packets isavoided.

Process 600 may include additional implementations, such as any singleimplementation or any combination of implementations described belowand/or in connection with one or more other processes describedelsewhere herein.

In some implementations, the route advertisement may permit the othernetwork devices to learn that the attachment circuit is directlyreachable based on the reachability information so as to facilitate alinktrace procedure. In some implementations, the reachabilityinformation may include a MAC address. In some implementations, the MACaddress may not be locally added in a data structure, of the networkdevice, that stores route information.

Although FIG. 6 shows example blocks of process 600, in someimplementations, process 600 may include additional blocks, fewerblocks, different blocks, or differently arranged blocks than thosedepicted in FIG. 6. Additionally, or alternatively, two or more of theblocks of process 600 may be performed in parallel.

In this way, a remote PE device, configured as an MEP (e.g., in an UpMEP session), may directly transmit performance monitoring-relatedunicast packets to the multihomed PE device using the advertised MACaddress. This eliminates the possibility of such unicast packets beingtreated as unknown unicast packets and flooded (e.g., as a trafficstorm) to all PE devices on an EVPN, which reduces unneeded networktraffic, thereby improving overall network performance. This alsopermits a remote PE device, configured as an MEP, to uniquely monitorconnectivity between individual attachment circuits in a multihomednetwork operating in the All-Active redundancy mode, which enablesappropriate identification of connectivity issues over an EVPN, thusimproving CFM, including various related procedures, such as Loopbackand Linktrace. For example, implementations, described herein, assistwith Linktrace in an EVPN topology.

The foregoing disclosure provides illustration and description, but isnot intended to be exhaustive or to limit the implementations to theprecise form disclosed. Modifications and variations are possible inlight of the above disclosure or may be acquired from practice of theimplementations.

As used herein, the term component is intended to be broadly construedas hardware, firmware, or a combination of hardware and software.

It will be apparent that systems and/or methods, described herein, maybe implemented in different forms of hardware, firmware, or acombination of hardware and software. The actual specialized controlhardware or software code used to implement these systems and/or methodsis not limiting of the implementations. Thus, the operation and behaviorof the systems and/or methods were described herein without reference tospecific software code—it being understood that software and hardwaremay be designed to implement the systems and/or methods based on thedescription herein.

Even though particular combinations of features are recited in theclaims and/or disclosed in the specification, these combinations are notintended to limit the disclosure of possible implementations. In fact,many of these features may be combined in ways not specifically recitedin the claims and/or disclosed in the specification. Although eachdependent claim listed below may directly depend on only one claim, thedisclosure of possible implementations includes each dependent claim incombination with every other claim in the claim set.

No element, act, or instruction used herein should be construed ascritical or essential unless explicitly described as such. Also, as usedherein, the articles “a” and “an” are intended to include one or moreitems, and may be used interchangeably with “one or more.” Furthermore,as used herein, the term “set” is intended to include one or more items(e.g., related items, unrelated items, a combination of related andunrelated items, etc.), and may be used interchangeably with “one ormore.” Where only one item is intended, the term “one” or similarlanguage is used. Also, as used herein, the terms “has,” “have,”“having,” and/or the like are intended to be open-ended terms. Further,the phrase “based on” is intended to mean “based, at least in part, on”unless explicitly stated otherwise.

1. A method, comprising: providing, by a first provider edge (PE)device, a route advertisement, the first PE device being part of anEthernet virtual private network (EVPN), and being multihomed to by afirst customer edge (CE) device, a first attachment circuit beingestablished between the first PE device and the first CE device, theroute advertisement including a media access control (MAC) address,corresponding to the first attachment circuit, that is utilized as aconnectivity fault management (CFM) MAC address for a maintenanceendpoint (MEP) configured on the first attachment circuit; receiving, bya second PE device, the route advertisement, the second PE device beingpart of the EVPN, and being communicatively coupled to a second CEdevice, a second attachment circuit being established between the secondPE device and the second CE device, the second PE device beingconfigured to monitor connectivity between the second PE device and thesecond CE device and the first PE device and the first CE device; andcausing, by the second PE device and by monitoring the connectivity,traffic to be directed to the first PE device and/or to the firstattachment circuit based on the route advertisement, the traffic notbeing provided to any other PE device, on the EVPN, that is multihomedto by the first CE device.
 2. The method of claim 1, wherein the secondPE device is configured to monitor the connectivity based on performancemonitoring when CFM MEP is configured.
 3. The method of claim 1, whereinthe second PE device is configured as a maintenance endpoint (MEP). 4.The method of claim 1, wherein the traffic includes a unicast packethaving the MAC address as a destination address.
 5. The method of claim1, wherein the route advertisement includes a Type 2 routeadvertisement.
 6. The method of claim 1, wherein the route advertisementdoes not advertise reachability of the first attachment circuit based onan Ethernet segment identifier (ESI).
 7. The method of claim 1, whereinan Ethernet segment identifier (ESI) value in the route advertisement isset to ‘0’.
 8. The method of claim 1, wherein the first CE device ismultihomed to the first PE device, and to at least one other PE deviceon the EVPN, based on an All-Active redundancy mode of operation.
 9. Themethod of claim 1, wherein the second PE device is a remote PE devicethat is not associated with an Ethernet segment relating to the first CEdevice.
 10. The method of claim 1, wherein the traffic is not flooded tomultiple PE devices on the EVPN.
 11. The method of claim 1, wherein theEVPN is configured as a multipoint-to-multipoint network.
 12. The methodof claim 1, wherein providing the route advertisement, and receiving theroute advertisement, are performed via a control plane.
 13. The methodof claim 1, wherein the first PE device is configured to monitor theconnectivity between the first attachment circuit and the secondattachment circuit; wherein the second PE device is multihomed to by thesecond CE device; and the method further comprising: providing, by thesecond PE device, another route advertisement, the other routeadvertisement including a MAC address, corresponding to the secondattachment circuit, that is utilized as a CFM MAC address for an MEPconfigured on the second attachment circuit; receiving, by the first PEdevice, the other route advertisement; and causing, by the first PEdevice, additional traffic, relating to monitoring the connectivity, tobe directed to the second PE device and/or to the second attachmentcircuit based on the other route advertisement, the additional trafficnot being provided to any other PE device, on the EVPN, that ismultihomed to by the second CE device.
 14. A network device, comprising:one or more memories; and one or more processors to: generate a routeadvertisement that includes a media access control (MAC) address, theMAC address corresponding to a data link established between the networkdevice and a customer edge (CE) device, the MAC address associated witha physical port, of the network device, to which the CE device iscommunicatively coupled, the network device being multihomed, thenetwork device and the CE device being associated with an Ethernetvirtual private network (EVPN), the EVPN including other network devicesthat are different than the CE device; and cause the route advertisementto be outputted over the EVPN, the route advertisement permitting theother network devices to learn that the data link is directly reachable,without transmitting network traffic to the other network devices on theEVPN, via the MAC address, and enabling the other network devices, whenconfigured as maintenance endpoints (MEPs), to directly addressperformance monitoring-related unicast packets, intended for the datalink, using the MAC address, such that flooding of the performancemonitoring-related unicast packets is avoided.
 15. The network device ofclaim 14, wherein the performance monitoring-related unicast packets areassociated with delay measurements (ETH-DM) and/or synthetic lossmeasurements (ETH-SLM).
 16. The network device of claim 14, wherein theperformance monitoring-related unicast packets are associated withEthernet Loopback (ETH-LB) messages and/or Ethernet Linktrace Reply(ETH-LTR).
 17. (canceled)
 18. A non-transitory computer-readable mediumstoring instructions, the instructions comprising: one or moreinstructions that, when executed by one or more processors of a networkdevice, cause the one or more processors to: generate a routeadvertisement that includes reachability information associated with anattachment circuit established between the network device and a customeredge (CE) device, the network device being multihomed, the networkdevice and the CE device being associated with an Ethernet virtualprivate network (EVPN), the EVPN including other network devices thatare different than the CE device; and cause the route advertisement tobe outputted over the EVPN, the route advertisement permitting the othernetwork devices to learn that the attachment circuit is directlyreachable, without transmitting network traffic to the other networkdevices on the EVPN, based on the reachability information, and enablingthe other network devices, when configured to conduct performancemonitoring in accordance with connectivity fault management (CFM), todirectly address performance monitoring-related unicast packets,intended for performance monitoring of the attachment circuit, using thereachability information, such that flooding of the performancemonitoring-related unicast packets is avoided.
 19. The non-transitorycomputer-readable medium of claim 18, wherein the route advertisementpermits the other network devices to learn that the attachment circuitis directly reachable based on the reachability information so as tofacilitate a linktrace procedure.
 20. The non-transitorycomputer-readable medium of claim 18, wherein the reachabilityinformation includes a MAC address; and wherein the MAC address is notlocally added in a data structure, of the network device, that storesroute information.
 21. The network device of claim 14, wherein the MACaddress is not locally added in a data structure, of the network device,that stores route information.